uniform mat4 u_mvpMatrix;
uniform mat4 u_modelMatrix;

attribute vec3 a_posL;
attribute vec3 a_tangentL;
attribute vec3 a_bitangentL; 
attribute vec2 a_uv;
attribute vec3 a_Nomal;
uniform vec3 campos;

varying vec2   v_uv;
varying vec3   v_Nomal;
varying vec3 v_tangentW;
varying vec3 v_bitangentW;
varying vec3   toEye;
void main()
{
	vec4 posL=vec4(a_posL, 1.0);
	gl_Position = u_mvpMatrix * posL;
	vec3 position=(u_modelMatrix*posL).xyz;
	toEye=normalize(campos-position);
    v_Nomal = normalize((u_modelMatrix * vec4(a_Nomal, 0.0)).xyz);
    v_tangentW = normalize((u_modelMatrix * vec4(a_tangentL, 0.0)).xyz);
    v_bitangentW = normalize((u_modelMatrix * vec4(a_bitangentL, 0.0)).xyz);
    v_uv = a_uv; 
}